/*
 * File:   TreeTest.h
 * Author: KENNJI
 *
 * Created on Mar 25, 2013, 9:20:24 PM
 */

#ifndef TREETEST_H
#define	TREETEST_H

#include <cppunit/extensions/HelperMacros.h>

class TreeTest : public CPPUNIT_NS::TestFixture
{
    CPPUNIT_TEST_SUITE(TreeTest);

    CPPUNIT_TEST(itShouldDefineTheRootWhenTheFirstItemIsAddedToTree);
    CPPUNIT_TEST(itShouldAddANodeToTree);
    CPPUNIT_TEST(itShouldAddADirectoryNodeWhenConditionIsTrue);
    CPPUNIT_TEST(itShouldAddAFileNodeWhenConditionIsFalse);
    CPPUNIT_TEST(itShouldAddAnItemToASpecificNode);
    CPPUNIT_TEST(itShouldTraverseTheTree);

    CPPUNIT_TEST_SUITE_END();

public:
    TreeTest();
    virtual ~TreeTest();
    void setUp();
    void tearDown();

private:
    void itShouldAddANodeToTree();
    void itShouldDefineTheRootWhenTheFirstItemIsAddedToTree();
    void itShouldAddADirectoryNodeWhenConditionIsTrue();
    void itShouldAddAFileNodeWhenConditionIsFalse();
    void itShouldAddAnItemToASpecificNode();
    void itShouldTraverseTheTree();
};

#endif	/* TREETEST_H */

